Fundamentos de Node-RED
Esta página proporciona una introducción a Node-RED tal como se implementa en el sistema de cámaras OV20i, explicando conceptos clave y características que le ayudarán a crear flujos de inspección potentes.
¿Qué es Node-RED?
Node-RED es una herramienta de programación basada en flujos que ofrece un editor en navegador para conectar visualmente dispositivos de hardware, APIs y servicios en línea. Originalmente desarrollado por IBM, se ha convertido en un proyecto de código abierto que ofrece un enfoque low-code para la automatización y el procesamiento de datos.
La cámara OV20i aprovecha Node-RED como su plataforma de automatización, permitiéndole crear flujos de inspección sofisticados con un conocimiento mínimo de programación. A través de una interfaz simple de arrastrar y soltar, puede desarrollar rápidamente lógica compleja que de otro modo requeriría una amplia experiencia en programación.
Conceptos Clave en Node-RED
Flujos
Los flujos son las representaciones visuales de sus procesos automatizados. Cada flujo consta de nodos conectados por cables que representan cómo se mueve la información a través del sistema. La cámara OV20i utiliza flujos para procesar resultados de inspección y comunicarse con sistemas externos.
Nodos
Los nodos son los bloques constructores de sus flujos, cada uno representando una función o capacidad específica:
- Nodos de entrada - Reciben datos (p. ej., disparadores de cámara, solicitudes HTTP)
- Nodos de procesamiento - Transforman o analizan datos (p. ej., lógica de clasificación)
- Nodos de salida - Envian datos a sistemas externos o activan acciones (p. ej., comunicación con PLC)
Mensajes
Los nodos se comunican pasando mensajes entre sí. En el sistema OV20i, estos mensajes suelen contener:
- Resultados de inspección
- Metadatos sobre los objetos inspeccionados
- Comandos para sistemas externos
- Señales de disparo
Almacenamiento de Contexto
Node-RED proporciona un método para almacenar información que puede compartirse entre diferentes nodos sin depender de mensajes que pasen por un flujo.
El ‘scope’ (alcance) de un valor de contexto particular determina quién puede acceder a él:
Tipo de Scope | Visibilidad | Caso de Uso |
---|---|---|
Contexto de Nodo | Visible solo para el nodo que estableció el valor | Almacenar información temporal específica del nodo |
Contexto de Flujo | Visible para todos los nodos en el mismo flujo (pestaña) | Compartir datos entre nodos dentro del mismo flujo |
Contexto Global | Visible para todos los nodos en todos los flujos | Estado o configuración a nivel de aplicación |
Beneficios del Almacenamiento de Contexto
- Persistencia de Datos - Almacenar datos entre flujos de mensajes
- Flexibilidad de Scope - Diferentes niveles de compartición de datos
- Gestión de Estado - Mantener el estado de la aplicación entre nodos
Botón Deploy
El botón Deploy en Node-RED le permite aplicar y enviar configuraciones al entorno de ejecución.
Opciones de Deploy:
- Deploy Completo - Actualiza todos los nodos y flujos
- Nodos Modificados - Actualiza solo los nodos que han cambiado
- Flujos Modificados - Actualiza solo los flujos que contienen nodos modificados
Importación y Exportación
Node-RED permite exportar e importar configuraciones de flujos como archivos JSON, lo que posibilita:
- Respaldo de las configuraciones de su cámara
- Compartir flujos entre miembros del equipo
- Transferir configuraciones entre diferentes cámaras
Proceso de Exportación
- Abra el Editor Node-RED de la cámara
- Seleccione los flujos que desea exportar
- Haga clic en el botón de menú y seleccione "Export"
- Elija el formato JSON
Proceso de Importación
- Abra el Editor Node-RED de la cámara
- Haga clic en el botón de menú y seleccione "Import"
- Pegue los datos JSON o cargue el archivo JSON
- Haga clic en "Import" para integrar la configuración
- Deploy para aplicar los nuevos flujos
Debug
Propósito y Funcionalidad
El nodo Debug muestra mensajes en la barra lateral Debug del editor Node-RED, facilitando el desarrollo y solución de problemas de los flujos de inspección.
Características Clave
- Vista estructurada de mensajes en la barra lateral Debug
- Información detallada sobre el tiempo y origen de los mensajes
- Capacidad para localizar nodos fuente en el espacio de trabajo
- Función de alternar para habilitar/deshabilitar la salida de debug
Capacidades del Dashboard
El Dashboard de Node-RED proporciona una interfaz web para monitorear y controlar su sistema de cámaras mediante una IU personalizable.
Componentes Clave
- Administrador de Layout - Organiza los componentes de la IU
- Nodos UI - Añade elementos específicos de interfaz
- Personalización de Tema - Personalice la apariencia
Elementos Comunes de la IU
- Botones - Activan acciones como cambios de receta
- Gráficas - Visualizan métricas de inspección a lo largo del tiempo
- Medidores - Monitorean valores dentro de un rango
- Displays de texto - Muestran el estado actual de la cámara
- Deslizadores - Ajustan parámetros en tiempo real
Pasos para Crear un Dashboard
- Agregar Nodos UI a los Flujos - Arrastre y suelte nodos UI desde la paleta a sus flujos para definir los datos y controles que desea incluir en el dashboard
- Configurar Nodos UI - Configure las propiedades de cada nodo UI, como etiquetas, rangos y fuentes de datos
- Organizar Componentes - Use el administrador de layout para organizar los componentes UI en el dashboard, creando un diseño lógico y amigable
- Deploy y Acceso al Dashboard - Despliegue sus flujos y acceda al dashboard navegando a la URL correspondiente (típicamente
http://\{hostname\}/ui
)
Trabajando con Node-RED en el OV20i
Acceso al Editor
El editor Node-RED en su cámara OV20i puede accederse a través de la IU.
Flujo Predeterminado
El OV20i incluye un flujo predeterminado preconfigurado que maneja operaciones básicas de inspección. Esto sirve como punto de partida para sus configuraciones personalizadas y demuestra las mejores prácticas para la integración de la cámara.
Nodos Personalizados OV20i
La cámara extiende Node-RED con nodos especializados diseñados para aplicaciones de visión:
- Lógica de Clasificación - Procesa resultados de clasificación
- Formato PLC - Formatea datos para controladores industriales
- Resultado Final Pass/Fail - Determina resultados de inspección
Capacidades de Integración
El entorno Node-RED en el OV20i soporta integración con varios sistemas industriales:
- PLCs vía Ethernet/IP, Profinet o Modbus
- MQTT para aplicaciones IoT
- HTTP/REST para servicios web
- Sistemas de base de datos para registro de datos
- Interfaces HMI para control de operador
Mejores Prácticas
Organización de Flujos
- Mantenga los flujos organizados por función
- Use comentarios para documentar lógica compleja
- Nombre los nodos claramente para indicar su propósito
- Use subflujos para patrones repetidos
Consideraciones de Rendimiento
- Minimice el número de nodos debug en producción
- Considere el impacto de disparadores de alta frecuencia
- Use variables de contexto eficientemente
- Pruebe exhaustivamente antes del despliegue
Estrategia de Respaldo
- Exporte y guarde sus flujos regularmente
- Documente los cambios en su configuración
- Considere control de versiones para entornos de equipo
- Pruebe los flujos restaurados antes de uso en producción